namespace go api

struct ListCounterpartyContactRequest {
    1: required i32 pageNum
    2: required i32 pageSize
    3: string sort
    4: CounterpartyContactData data
}

struct ListCounterpartyContactResponse {
	1: list<CounterpartyContactData> data
	2: i64 count
}

struct CounterpartyContactData {
	1:i64 id
	2: string created_at,
    3: string updated_at,
    4: i64 created_user_id,
    5: i64 updated_user_id,
    6: i64 organization_id,
    7: string updated_user_nickname,
    8: string created_user_nickname,
		9: i64 counterpartyId
	10: string contactName
	11: string contactPhone
	12: string contactAddress
	13: string provinceName
	14: string provinceCode
	15: string cityName
	16: string cityCode
	17: string areaName
	18: string areaCode

}

struct BatchDeleteCounterpartyContactRequest {
    1: list<i64> ids
}

service CounterpartyContact {
    ListCounterpartyContactResponse listCounterpartyContact(1: ListCounterpartyContactRequest req)
    CounterpartyContactData getCounterpartyContact(1: CounterpartyContactData req)
    void addCounterpartyContact(1: CounterpartyContactData req)
    void editCounterpartyContact(1: CounterpartyContactData req)
    void deleteCounterpartyContact(1: i64 id)
    void batchDeleteCounterpartyContact(1: BatchDeleteCounterpartyContactRequest req)
}